Clean Coder
https://gyazo.com/1c1189bd6c16dbe146996918b8f04849
タイトル
Clean Coder プロフェッショナルプログラマへの道
著者
年
2018
復刊の年。もともとはもっと古い本
リソース
概要
ソフトウェアエンジニアとしての心構えなどがかいてある
内容
第三章「イエス」という
イエスと言うときには、確実な約束をすること
全てにイエスとは言えないが、イエスと言えるような方法を頑張って探す
「月曜日までに必ず間に合う?」
「月曜日までに終わるかもしれませんが、必ず間に合うのは火曜日です」
「確実に月曜日に間に合わせたいんだ」
「残業をして、土曜日も出れば。ただ火曜日は休みます」
できることが「ない」ときに「ある」というとプロジェクトは失敗する
p.67
約束がない言葉の例
「する必要がある」
で、誰がやるの?
「〜したい」
と思ってもやらない
「やりましょう」
自分がやるとはいってない
約束の言葉を使う
自分が行う内容と期限を明言する
「私が期限までにXXをやります」
できるかどうかわからない
その目標に近づく行動を約束する
例:リリース前に25個のバグを修正する
これそのものは約束できない(できるかわからないから)
これに近づくための3つの行動を約束する
25個のバグを調査・再現する
バグを発見したQAの再現方法を確認する
作業時間が余ったら、できるだけバグを修正する
確実にできる?
矛盾
p.96のTDDの章は、次のように書いてある
(TDDの3原則に従うのが)非現実で不適切なことも(ごくまれに)ある、利点より外のほうが大きくても原則に従うというのは、プロの開発者ではない
一方、p.156のプレッシャーの章では、次のように書いてある
平常時にTDDの規律を守り、緊急時にそれを守らないとすれば、TDDの効果を心から信じていないことだ。平常時にコードをクリーンに保ち、緊急時に乱雑にするのであれば、乱雑が速度を落とすことを信じていないのだ
緊急時に安心して守れるような規律を選ぼう。そして、それを常に守ろう。規律を守ることが緊急時から逃れる最善の方法である。ピンチに陥っても行動を変えてはいけない。規律が最善の方法であれば、緊急時になっても守るべきである。